﻿//-----------------------------------------------------------------------
// <copyright file="IExplorerViewModel.cs" author="Artak Mkrtchyan">
//     Creative Commons - GNU General Public License (http://creativecommons.org/licenses/GPL/2.0/
// </copyright>
// <author>Artak Mkrtchyan</author>
// <email>mkArtak@gmail.com</email>
// <date>03/01/2013</date>
//-----------------------------------------------------------------------

using System.Threading.Tasks;

namespace ConsoleHoster.ViewModel
{
	/// <summary>
	/// Represents the contract for working with the integrated explorer tree
	/// </summary>
	public interface IExplorerViewModel
	{
		/// <summary>
		/// Gets or Sets a boolean value, indicating whether the previousely selected item in
		/// the explorer should be collapsed or not, when selecting another item
		/// </summary>
		bool AutoCollapseOldItems { get; set; }

		/// <summary>
		/// Navigates to the specified path in the explorer tree
		/// </summary>
		/// <param name="argFolder">The folder path to navigate to</param>
		void NavigateTo(string argFolder);

		/// <summary>
		/// Rebuilds the explorer tree from scratch
		/// </summary>
		Task RetreieveDrives();
	}
}
